package org.example.util;

import cn.hutool.json.JSONUtil;

import java.util.Random;
import java.util.UUID;

/**
 * @author yangzhenyu
 * @version 1.0
 * @description:
 * @date 2023/4/27 17:03
 */
public class JobUtil {
    public  static int nextInt(int min, int max) {
        return new Random().nextInt(max - min) + min;
    }
    public static String simpleUUID() {
        return UUID.randomUUID().toString().replace("-", "");
    }
    /**
     * 判断当前时间是否在配置范围内
     *
     * @param curHour   当前小时
     * @param startHour 配置开始小时
     * @param endHour   配置结束小时，不包含在内
     * @return
     */
    public static  boolean ifCurrentHourInRange(int curHour, int startHour, int endHour) {
        if (startHour > endHour) {
            // 如果配置开始小时大于结束小时，则跨天，那么当前小时数大于开始小时 或者 当前小时小于结束小时，则在配置时间范围内
            if (curHour >= startHour || curHour < endHour) {
                return true;
            }
        } else {
            // 如果配置开始小时小于等于结束小时，则不跨天，那么当前小时数大于开始小时 并且 当前小时小于结束小时，则在配置时间范围内
            if (curHour >= startHour && curHour < endHour) {
                return true;
            }
        }
        return false;
    }
    /**
     * @description: Object 转 json
     * @author yangzhenyu
     * @date 2023/2/15 18:29
     * @version 1.0
     */
    public static String classToJson(Object o){
        return JSONUtil.toJsonStr(o);
    }
}
